package com.naiking.util
{
	import flash.display.BitmapData;
	import flash.display.MovieClip;
	import flash.geom.Matrix;
	import flash.geom.Rectangle;

	/**
	 * @author Nai.King
	 * 创建时间：2013-10-21 上午11:03:54
	 * 
	 */
	public class BmpdataUtil
	{
		/**获取一个mc的序列图  不删除这个mc*/
		public static function getMovieClipSheet(mc:MovieClip):Vector.<BitmapData>
		{
			var bmpdts:Vector.<BitmapData>=new Vector.<BitmapData>;
			var w:int=mc.loaderInfo.width;//我只截取icon舞台大小 出舞台不处理 
			var h:int=mc.loaderInfo.height;
			var bmpdt:BitmapData;
			//var i:int=0;
			for(var i:int=0;i<mc.totalFrames;i++)
			{
				mc.gotoAndStop(i+1);
				bmpdt=new BitmapData(w,h,true,0x00);
				bmpdt.draw(mc,null,null,null,new Rectangle(0,0,w,h));
				bmpdts.push(bmpdt);
			}
			return bmpdts;
		}
		/**
		 * 
		 * @param bmpdtSrc 需要缩放的源
		 * @param _w 设置的w
		 * @param _h 设置的h
		 * @param bmpdtSrcGC 是否对原始的Bitmapdata清除
		 * @return 
		 * 
		 */		
		public static function getScaledBmpdt(bmpdtSrc:BitmapData,_w:int,_h:int,bmpdtSrcGC:Boolean=false):BitmapData
		{
			var mtrix:Matrix=new Matrix();
			var scaleX:Number=NMath.getAccuracyValue(150/bmpdtSrc.width,2);
			var scaleY:Number=NMath.getAccuracyValue(72/bmpdtSrc.height,2);
			mtrix.scale(scaleX,scaleY);
			var newBmpdt:BitmapData=new BitmapData(_w,_h,true,0x00);
			newBmpdt.draw(bmpdtSrc,mtrix);
			if(bmpdtSrcGC)
			{
				bmpdtSrc.dispose();
				bmpdtSrc=null;
			}
			return newBmpdt;
			
		}
		public function BmpdataUtil()
		{
		}
	}
}